package com.hnichr.ump.common.assessment.entity;

import com.hnichr.ump.common.entity.UmpEntity;
import com.mxpioframework.jpa.annotation.Generator;
import com.mxpioframework.security.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.*;
import java.util.Date;


@Data
@EqualsAndHashCode(callSuper=false)
@Entity
@Table(name = "T_ASSESSMENT_TEST_RESULT",indexes = {@Index(columnList = "TESTEE_RESULT_ID_")})
@Schema(description = "测验表")
public class TestResult extends UmpEntity {
    @Id
    @Generator
    @Column(name = "ID_", updatable = false)
    @Schema(description = "ID")
    private String id;

    @Column(name = "TENANT_ID_")
    @Schema(description = "租户")
    @Dict(dicCode = "BEISEN_ACTIVITY_TENANT")
    private String tenantId;

    @Column(name = "TESTEE_RESULT_ID_")
    @Schema(description = "评测结果表id")
    private String testeeResultId;

    @Column(name = "TEST_CREATE_TIME_")
    @Schema(description = "测验时间")
    private Date testCreateTime;

    @Column(name = "NAME_")
    @Schema(description = "测验名称")
    private String name;

    @Column(name = "CENT_")
    @Schema(description = "测验得分")
    private String cent;

    @Column(name = "SUB_CENT_",length = 500)
    @Schema(description = "综合得分")
    private String subCent;

    @Column(name = "TYPE_")
    @Schema(description = "测验类型 【0：定制报告(无分数)1:总分 2:匹配度分 4:职业锚类型 5:管理风格类型 6:性格类型 7:领导力类型 8：心理健康风险等级 9:考试中心总分 10：管理人员偏离类型 11：职业兴趣类型 15：工作价值观类型16：智力能力测验17：GPI个性测验18：DPI偏离因素测验19：图片人格测评")
    private String type;

    @Column(name = "ANSWER_EFFECTIVE_")
    @Schema(description = "作答有效性")
    private String answerEffective;

    @Column(name = "EXAMINE_STATUS_")
    @Schema(description = "阅卷状态（考试活动用）")
    private String examineStatus;

    @Column(name = "CAN_MAUNAL_")
    @Schema(description = "是否需要阅卷（考试活动用）")
    private String canMaunal;

    @Column(name = "EXAM_SUBJECTIVE_PART_CENT_")
    @Schema(description = "客观题得分（考试活动用）")
    private String examSubjectivePartCent;

    @Column(name = "EXAM_OBJECTIVE_PART_CENT_")
    @Schema(description = "主观题得分（考试活动用）")
    private String examObjectivePartCent;

}
